/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package EA_Model.IEC61970.Wires.impl;

import EA_Model.IEC61970.Core.impl.ConductingEquipmentImpl;

import EA_Model.IEC61970.Domain.ActivePower;
import EA_Model.IEC61970.Domain.Frequency;
import EA_Model.IEC61970.Domain.Reactance;
import EA_Model.IEC61970.Domain.Resistance;
import EA_Model.IEC61970.Domain.Voltage;

import EA_Model.IEC61970.Wires.OperatingMode;
import EA_Model.IEC61970.Wires.RectifierInverter;
import EA_Model.IEC61970.Wires.WiresPackage;

import org.eclipse.emf.common.notify.Notification;

import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.InternalEObject;

import org.eclipse.emf.ecore.impl.ENotificationImpl;

/**
 * <!-- begin-user-doc -->
 * An implementation of the model object '<em><b>Rectifier Inverter</b></em>'.
 * <!-- end-user-doc -->
 * <p>
 * The following features are implemented:
 * <ul>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getBridges <em>Bridges</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getCommutatingReactance <em>Commutating Reactance</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getCommutatingResistance <em>Commutating Resistance</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getCompoundResistance <em>Compound Resistance</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getFrequency <em>Frequency</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getMaxP <em>Max P</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getMaxU <em>Max U</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getMinCompoundVoltage <em>Min Compound Voltage</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getMinP <em>Min P</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getMinU <em>Min U</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getOperatingMode <em>Operating Mode</em>}</li>
 *   <li>{@link EA_Model.IEC61970.Wires.impl.RectifierInverterImpl#getRatedU <em>Rated U</em>}</li>
 * </ul>
 * </p>
 *
 * @generated
 */
public class RectifierInverterImpl extends ConductingEquipmentImpl implements RectifierInverter {
	/**
	 * The cached value of the '{@link #getBridges() <em>Bridges</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getBridges()
	 * @generated
	 * @ordered
	 */
	protected EA_Model.IEC61970.Domain.Integer bridges;

	/**
	 * The cached value of the '{@link #getCommutatingReactance() <em>Commutating Reactance</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getCommutatingReactance()
	 * @generated
	 * @ordered
	 */
	protected Reactance commutatingReactance;

	/**
	 * The cached value of the '{@link #getCommutatingResistance() <em>Commutating Resistance</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getCommutatingResistance()
	 * @generated
	 * @ordered
	 */
	protected Resistance commutatingResistance;

	/**
	 * The cached value of the '{@link #getCompoundResistance() <em>Compound Resistance</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getCompoundResistance()
	 * @generated
	 * @ordered
	 */
	protected Resistance compoundResistance;

	/**
	 * The cached value of the '{@link #getFrequency() <em>Frequency</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getFrequency()
	 * @generated
	 * @ordered
	 */
	protected Frequency frequency;

	/**
	 * The cached value of the '{@link #getMaxP() <em>Max P</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getMaxP()
	 * @generated
	 * @ordered
	 */
	protected ActivePower maxP;

	/**
	 * The cached value of the '{@link #getMaxU() <em>Max U</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getMaxU()
	 * @generated
	 * @ordered
	 */
	protected Voltage maxU;

	/**
	 * The cached value of the '{@link #getMinCompoundVoltage() <em>Min Compound Voltage</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getMinCompoundVoltage()
	 * @generated
	 * @ordered
	 */
	protected Voltage minCompoundVoltage;

	/**
	 * The cached value of the '{@link #getMinP() <em>Min P</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getMinP()
	 * @generated
	 * @ordered
	 */
	protected ActivePower minP;

	/**
	 * The cached value of the '{@link #getMinU() <em>Min U</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getMinU()
	 * @generated
	 * @ordered
	 */
	protected Voltage minU;

	/**
	 * The cached value of the '{@link #getOperatingMode() <em>Operating Mode</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getOperatingMode()
	 * @generated
	 * @ordered
	 */
	protected OperatingMode operatingMode;

	/**
	 * The cached value of the '{@link #getRatedU() <em>Rated U</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getRatedU()
	 * @generated
	 * @ordered
	 */
	protected Voltage ratedU;

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected RectifierInverterImpl() {
		super();
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	protected EClass eStaticClass() {
		return WiresPackage.Literals.RECTIFIER_INVERTER;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public EA_Model.IEC61970.Domain.Integer getBridges() {
		if (bridges != null && bridges.eIsProxy()) {
			InternalEObject oldBridges = (InternalEObject)bridges;
			bridges = (EA_Model.IEC61970.Domain.Integer)eResolveProxy(oldBridges);
			if (bridges != oldBridges) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__BRIDGES, oldBridges, bridges));
			}
		}
		return bridges;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public EA_Model.IEC61970.Domain.Integer basicGetBridges() {
		return bridges;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setBridges(EA_Model.IEC61970.Domain.Integer newBridges) {
		EA_Model.IEC61970.Domain.Integer oldBridges = bridges;
		bridges = newBridges;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__BRIDGES, oldBridges, bridges));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Reactance getCommutatingReactance() {
		if (commutatingReactance != null && commutatingReactance.eIsProxy()) {
			InternalEObject oldCommutatingReactance = (InternalEObject)commutatingReactance;
			commutatingReactance = (Reactance)eResolveProxy(oldCommutatingReactance);
			if (commutatingReactance != oldCommutatingReactance) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__COMMUTATING_REACTANCE, oldCommutatingReactance, commutatingReactance));
			}
		}
		return commutatingReactance;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Reactance basicGetCommutatingReactance() {
		return commutatingReactance;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setCommutatingReactance(Reactance newCommutatingReactance) {
		Reactance oldCommutatingReactance = commutatingReactance;
		commutatingReactance = newCommutatingReactance;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__COMMUTATING_REACTANCE, oldCommutatingReactance, commutatingReactance));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Resistance getCommutatingResistance() {
		if (commutatingResistance != null && commutatingResistance.eIsProxy()) {
			InternalEObject oldCommutatingResistance = (InternalEObject)commutatingResistance;
			commutatingResistance = (Resistance)eResolveProxy(oldCommutatingResistance);
			if (commutatingResistance != oldCommutatingResistance) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__COMMUTATING_RESISTANCE, oldCommutatingResistance, commutatingResistance));
			}
		}
		return commutatingResistance;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Resistance basicGetCommutatingResistance() {
		return commutatingResistance;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setCommutatingResistance(Resistance newCommutatingResistance) {
		Resistance oldCommutatingResistance = commutatingResistance;
		commutatingResistance = newCommutatingResistance;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__COMMUTATING_RESISTANCE, oldCommutatingResistance, commutatingResistance));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Resistance getCompoundResistance() {
		if (compoundResistance != null && compoundResistance.eIsProxy()) {
			InternalEObject oldCompoundResistance = (InternalEObject)compoundResistance;
			compoundResistance = (Resistance)eResolveProxy(oldCompoundResistance);
			if (compoundResistance != oldCompoundResistance) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__COMPOUND_RESISTANCE, oldCompoundResistance, compoundResistance));
			}
		}
		return compoundResistance;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Resistance basicGetCompoundResistance() {
		return compoundResistance;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setCompoundResistance(Resistance newCompoundResistance) {
		Resistance oldCompoundResistance = compoundResistance;
		compoundResistance = newCompoundResistance;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__COMPOUND_RESISTANCE, oldCompoundResistance, compoundResistance));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Frequency getFrequency() {
		if (frequency != null && frequency.eIsProxy()) {
			InternalEObject oldFrequency = (InternalEObject)frequency;
			frequency = (Frequency)eResolveProxy(oldFrequency);
			if (frequency != oldFrequency) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__FREQUENCY, oldFrequency, frequency));
			}
		}
		return frequency;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Frequency basicGetFrequency() {
		return frequency;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setFrequency(Frequency newFrequency) {
		Frequency oldFrequency = frequency;
		frequency = newFrequency;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__FREQUENCY, oldFrequency, frequency));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public ActivePower getMaxP() {
		if (maxP != null && maxP.eIsProxy()) {
			InternalEObject oldMaxP = (InternalEObject)maxP;
			maxP = (ActivePower)eResolveProxy(oldMaxP);
			if (maxP != oldMaxP) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__MAX_P, oldMaxP, maxP));
			}
		}
		return maxP;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public ActivePower basicGetMaxP() {
		return maxP;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setMaxP(ActivePower newMaxP) {
		ActivePower oldMaxP = maxP;
		maxP = newMaxP;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__MAX_P, oldMaxP, maxP));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage getMaxU() {
		if (maxU != null && maxU.eIsProxy()) {
			InternalEObject oldMaxU = (InternalEObject)maxU;
			maxU = (Voltage)eResolveProxy(oldMaxU);
			if (maxU != oldMaxU) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__MAX_U, oldMaxU, maxU));
			}
		}
		return maxU;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage basicGetMaxU() {
		return maxU;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setMaxU(Voltage newMaxU) {
		Voltage oldMaxU = maxU;
		maxU = newMaxU;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__MAX_U, oldMaxU, maxU));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage getMinCompoundVoltage() {
		if (minCompoundVoltage != null && minCompoundVoltage.eIsProxy()) {
			InternalEObject oldMinCompoundVoltage = (InternalEObject)minCompoundVoltage;
			minCompoundVoltage = (Voltage)eResolveProxy(oldMinCompoundVoltage);
			if (minCompoundVoltage != oldMinCompoundVoltage) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__MIN_COMPOUND_VOLTAGE, oldMinCompoundVoltage, minCompoundVoltage));
			}
		}
		return minCompoundVoltage;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage basicGetMinCompoundVoltage() {
		return minCompoundVoltage;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setMinCompoundVoltage(Voltage newMinCompoundVoltage) {
		Voltage oldMinCompoundVoltage = minCompoundVoltage;
		minCompoundVoltage = newMinCompoundVoltage;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__MIN_COMPOUND_VOLTAGE, oldMinCompoundVoltage, minCompoundVoltage));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public ActivePower getMinP() {
		if (minP != null && minP.eIsProxy()) {
			InternalEObject oldMinP = (InternalEObject)minP;
			minP = (ActivePower)eResolveProxy(oldMinP);
			if (minP != oldMinP) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__MIN_P, oldMinP, minP));
			}
		}
		return minP;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public ActivePower basicGetMinP() {
		return minP;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setMinP(ActivePower newMinP) {
		ActivePower oldMinP = minP;
		minP = newMinP;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__MIN_P, oldMinP, minP));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage getMinU() {
		if (minU != null && minU.eIsProxy()) {
			InternalEObject oldMinU = (InternalEObject)minU;
			minU = (Voltage)eResolveProxy(oldMinU);
			if (minU != oldMinU) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__MIN_U, oldMinU, minU));
			}
		}
		return minU;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage basicGetMinU() {
		return minU;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setMinU(Voltage newMinU) {
		Voltage oldMinU = minU;
		minU = newMinU;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__MIN_U, oldMinU, minU));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public OperatingMode getOperatingMode() {
		if (operatingMode != null && operatingMode.eIsProxy()) {
			InternalEObject oldOperatingMode = (InternalEObject)operatingMode;
			operatingMode = (OperatingMode)eResolveProxy(oldOperatingMode);
			if (operatingMode != oldOperatingMode) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__OPERATING_MODE, oldOperatingMode, operatingMode));
			}
		}
		return operatingMode;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public OperatingMode basicGetOperatingMode() {
		return operatingMode;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setOperatingMode(OperatingMode newOperatingMode) {
		OperatingMode oldOperatingMode = operatingMode;
		operatingMode = newOperatingMode;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__OPERATING_MODE, oldOperatingMode, operatingMode));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage getRatedU() {
		if (ratedU != null && ratedU.eIsProxy()) {
			InternalEObject oldRatedU = (InternalEObject)ratedU;
			ratedU = (Voltage)eResolveProxy(oldRatedU);
			if (ratedU != oldRatedU) {
				if (eNotificationRequired())
					eNotify(new ENotificationImpl(this, Notification.RESOLVE, WiresPackage.RECTIFIER_INVERTER__RATED_U, oldRatedU, ratedU));
			}
		}
		return ratedU;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Voltage basicGetRatedU() {
		return ratedU;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setRatedU(Voltage newRatedU) {
		Voltage oldRatedU = ratedU;
		ratedU = newRatedU;
		if (eNotificationRequired())
			eNotify(new ENotificationImpl(this, Notification.SET, WiresPackage.RECTIFIER_INVERTER__RATED_U, oldRatedU, ratedU));
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public Object eGet(int featureID, boolean resolve, boolean coreType) {
		switch (featureID) {
			case WiresPackage.RECTIFIER_INVERTER__BRIDGES:
				if (resolve) return getBridges();
				return basicGetBridges();
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_REACTANCE:
				if (resolve) return getCommutatingReactance();
				return basicGetCommutatingReactance();
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_RESISTANCE:
				if (resolve) return getCommutatingResistance();
				return basicGetCommutatingResistance();
			case WiresPackage.RECTIFIER_INVERTER__COMPOUND_RESISTANCE:
				if (resolve) return getCompoundResistance();
				return basicGetCompoundResistance();
			case WiresPackage.RECTIFIER_INVERTER__FREQUENCY:
				if (resolve) return getFrequency();
				return basicGetFrequency();
			case WiresPackage.RECTIFIER_INVERTER__MAX_P:
				if (resolve) return getMaxP();
				return basicGetMaxP();
			case WiresPackage.RECTIFIER_INVERTER__MAX_U:
				if (resolve) return getMaxU();
				return basicGetMaxU();
			case WiresPackage.RECTIFIER_INVERTER__MIN_COMPOUND_VOLTAGE:
				if (resolve) return getMinCompoundVoltage();
				return basicGetMinCompoundVoltage();
			case WiresPackage.RECTIFIER_INVERTER__MIN_P:
				if (resolve) return getMinP();
				return basicGetMinP();
			case WiresPackage.RECTIFIER_INVERTER__MIN_U:
				if (resolve) return getMinU();
				return basicGetMinU();
			case WiresPackage.RECTIFIER_INVERTER__OPERATING_MODE:
				if (resolve) return getOperatingMode();
				return basicGetOperatingMode();
			case WiresPackage.RECTIFIER_INVERTER__RATED_U:
				if (resolve) return getRatedU();
				return basicGetRatedU();
		}
		return super.eGet(featureID, resolve, coreType);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public void eSet(int featureID, Object newValue) {
		switch (featureID) {
			case WiresPackage.RECTIFIER_INVERTER__BRIDGES:
				setBridges((EA_Model.IEC61970.Domain.Integer)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_REACTANCE:
				setCommutatingReactance((Reactance)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_RESISTANCE:
				setCommutatingResistance((Resistance)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__COMPOUND_RESISTANCE:
				setCompoundResistance((Resistance)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__FREQUENCY:
				setFrequency((Frequency)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MAX_P:
				setMaxP((ActivePower)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MAX_U:
				setMaxU((Voltage)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MIN_COMPOUND_VOLTAGE:
				setMinCompoundVoltage((Voltage)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MIN_P:
				setMinP((ActivePower)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MIN_U:
				setMinU((Voltage)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__OPERATING_MODE:
				setOperatingMode((OperatingMode)newValue);
				return;
			case WiresPackage.RECTIFIER_INVERTER__RATED_U:
				setRatedU((Voltage)newValue);
				return;
		}
		super.eSet(featureID, newValue);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public void eUnset(int featureID) {
		switch (featureID) {
			case WiresPackage.RECTIFIER_INVERTER__BRIDGES:
				setBridges((EA_Model.IEC61970.Domain.Integer)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_REACTANCE:
				setCommutatingReactance((Reactance)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_RESISTANCE:
				setCommutatingResistance((Resistance)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__COMPOUND_RESISTANCE:
				setCompoundResistance((Resistance)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__FREQUENCY:
				setFrequency((Frequency)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MAX_P:
				setMaxP((ActivePower)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MAX_U:
				setMaxU((Voltage)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MIN_COMPOUND_VOLTAGE:
				setMinCompoundVoltage((Voltage)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MIN_P:
				setMinP((ActivePower)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__MIN_U:
				setMinU((Voltage)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__OPERATING_MODE:
				setOperatingMode((OperatingMode)null);
				return;
			case WiresPackage.RECTIFIER_INVERTER__RATED_U:
				setRatedU((Voltage)null);
				return;
		}
		super.eUnset(featureID);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public boolean eIsSet(int featureID) {
		switch (featureID) {
			case WiresPackage.RECTIFIER_INVERTER__BRIDGES:
				return bridges != null;
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_REACTANCE:
				return commutatingReactance != null;
			case WiresPackage.RECTIFIER_INVERTER__COMMUTATING_RESISTANCE:
				return commutatingResistance != null;
			case WiresPackage.RECTIFIER_INVERTER__COMPOUND_RESISTANCE:
				return compoundResistance != null;
			case WiresPackage.RECTIFIER_INVERTER__FREQUENCY:
				return frequency != null;
			case WiresPackage.RECTIFIER_INVERTER__MAX_P:
				return maxP != null;
			case WiresPackage.RECTIFIER_INVERTER__MAX_U:
				return maxU != null;
			case WiresPackage.RECTIFIER_INVERTER__MIN_COMPOUND_VOLTAGE:
				return minCompoundVoltage != null;
			case WiresPackage.RECTIFIER_INVERTER__MIN_P:
				return minP != null;
			case WiresPackage.RECTIFIER_INVERTER__MIN_U:
				return minU != null;
			case WiresPackage.RECTIFIER_INVERTER__OPERATING_MODE:
				return operatingMode != null;
			case WiresPackage.RECTIFIER_INVERTER__RATED_U:
				return ratedU != null;
		}
		return super.eIsSet(featureID);
	}

} //RectifierInverterImpl
